Análise e Ciência de Dados para Campanha de Marketing¶

Autor: João Weckerle¶

Sumário¶

DataBase: Análise Inicial da base de dados¶

Gráficos: Gráficos de variáveis relacionadas ao perfil dos usuários¶

Público Alvo: Identificando o público alvo¶

M.L. : Criando os modelos de Machine Learning¶

Conclusões: Variáveis mais importantes e decisões a serem tomadas¶

• Analisando database¶

ID Year_Birth Education Marital_Status Income Kidhome Teenhome Dt_Customer Recency MntWines MntFruits MntMeatProducts MntFishProducts MntSweetProducts MntGoldProds NumDealsPurchases NumWebPurchases NumCatalogPurchases NumStorePurchases NumWebVisitsMonth AcceptedCmp3 AcceptedCmp4 AcceptedCmp5 AcceptedCmp1 AcceptedCmp2 Complain Z_CostContact Z_Revenue Response
0 5524 1957 Graduation Single 58138.000 0 0 2012-09-04 58 635 88 546 172 88 88 3 8 10 4 7 0 0 0 0 0 0 3 11 1
1 2174 1954 Graduation Single 46344.000 1 1 2014-03-08 38 11 1 6 2 1 6 2 1 1 2 5 0 0 0 0 0 0 3 11 0
2 4141 1965 Graduation Together 71613.000 0 0 2013-08-21 26 426 49 127 111 21 42 1 8 2 10 4 0 0 0 0 0 0 3 11 0
3 6182 1984 Graduation Together 26646.000 1 0 2014-02-10 26 11 4 20 10 3 5 2 2 0 4 6 0 0 0 0 0 0 3 11 0
4 5324 1981 PhD Married 58293.000 1 0 2014-01-19 94 173 43 118 46 27 15 5 5 3 6 5 0 0 0 0 0 0 3 11 0
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
2235 10870 1967 Graduation Married 61223.000 0 1 2013-06-13 46 709 43 182 42 118 247 2 9 3 4 5 0 0 0 0 0 0 3 11 0
2236 4001 1946 PhD Together 64014.000 2 1 2014-06-10 56 406 0 30 0 0 8 7 8 2 5 7 0 0 0 1 0 0 3 11 0
2237 7270 1981 Graduation Divorced 56981.000 0 0 2014-01-25 91 908 48 217 32 12 24 1 2 3 13 6 0 1 0 0 0 0 3 11 0
2238 8235 1956 Master Together 69245.000 0 1 2014-01-24 8 428 30 214 80 30 61 2 6 5 10 3 0 0 0 0 0 0 3 11 0
2239 9405 1954 PhD Married 52869.000 1 1 2012-10-15 40 84 3 61 2 1 21 3 3 1 4 7 0 0 0 0 0 0 3 11 1

2240 rows × 29 columns

A base de dados analisada contém informações de perfil do usuário e família, do perfil de compra deste e informações sobre aceitação de campanhas anteriores.¶

Através disso, foi possível encontrar as características que revelam a predisposição de um usuário a aceitar a campanha.¶

- Aqui podemos observar como a maioria das pessoas que aceitaram a campanha são, pelo menos, graduadas em algum curso.¶

- Além disso, é possível observar como pessoas casadas e sem filhos (crianças ou adolescentes) são maioria em todas as subdivisões educacionais.¶

'https://plotly.com/~theweckerle/303/'

- Uma melhor visão do mesmo gráfico, porém agora com as variáveis separadas.¶

- Uma melhor visão do mesmo gráfico, porém agora com as variáveis separadas.¶

Tratamento dos dados:¶

- Foram retirados os dados inconsistentes de idade;¶

- Dados inconsistentes de estado civil foram tratados:¶

** Pessoas com estado civil 'YOLO' e 'Absurd' removidas da base da dados¶

** Pessoas com estado civil 'Together' foram colocadas na mesma categoria de 'Married'¶

** Pessoas com estado civil 'Alone' foram colocadas na mesma categoria de 'Single'¶

- Os dados faltantes de Income foram substituidos pela média geral;¶

- Colunas Z_Revenue e Z_CostContact eram constantes e foram removidas da ánalise;¶

- Coluna Dt_Customer possui alta cardinalidade e também não foi levada em conta;¶

- Novas colunas foram criadas: Total gasto em todos os produtos; número de filhos em casa; total de campanhas aceitas.¶

Analisando alguns histogramas¶

Histograma das Campanhas:¶

Aqui é possível observar o já alcançado sucesso dessa última campanha em comparação com as demais.¶

Histogramas de Renda e Idade com outros atributos.¶

Estes histogramas são importantes, pois veremos que o Income é uma variável muito correlacionada com o Response e com o Total gasto, logo é importante analisar quem são as pessoas com maior renda.¶

Clicando na legenda do Response = 0, removemos esta categoria do gráfico e analisamos a distribuição de aceitação da campanha.¶

É possível notar o pico considerável de aceitação por pessoas com renda anual entre 70k e 85k.¶

Nessa mesma faixa salarial temos um pico de pessoas sem filhos, indicando mais uma possível correlação do número de filhos para seleção do público alvo.¶

Analisando a aceitação de pessoas baseada na idade, percebemos uma distribuição com 2 picos. Um primeiro entre pessoas com 38-41 anos e outro para pessoas com idades entre 46-53.¶

Histogramas dos dados categóricos de pessoas que aceitaram a Campanha.¶

Como mencionado, a aceitação da campanha é altamente relacionada com a renda anual, que por sua vez é muito relacionada com o Total gasto em produtos.¶

Analisando correlações diretas entre os dados¶

Analisando variáveis de compra e perfil de usuário¶

Renda anual (Income):¶

A renda anual é inversamente proporcional a quantidade de crianças em casa.¶

A renda anual é altamente correlacionada com todas as variáveis de compra (exceto compras com descontos) e em todos os meios de compra.¶

Contudo, ela é negativamente correlacionada com o número de visitas ao site, sugerindo que pessoas de maior renda compram mais nas lojas e catálogos.¶

Como já mencionada, esse parâmetro também é bastante correlacionado com a aceitação das campanhas, em especial com a última.¶

Analisando variáveis de compra e perfil de usuário¶

Filhos (Kidhome, Teenhome e Dependentes):¶

Variáveis negativamente correlacionadas com todos os índices de compras de produtos.¶

Também negativamente correlacionado com compras na web, catálogo e lojas.¶

Porém, é possível perceber que pessoas com filhos tendem a comprar mais com descontos e visitar mais a web.¶

Analisando variáveis de compra e perfil de usuário¶

Campanhas (AcceptedCmps, Total_Cmp):¶

De forma curiosa, as campanhas são mais correlacionadas com o total gasto em vinhos.¶

Como já mencionado, também é bem relacionada com o Total e com o Income.¶

Analisando a variável de interesse Response:¶

Em ordem de correlação, temos que os parâmetros mais importantes na aceitação são:¶

Total_Cmp.......................0.426¶

AcceptedCmp5...............0.326¶

AcceptedCmp1...............0.292¶

Total.................................0.266¶

AcceptedCmp3...............0.255¶

MntWines........................0.247¶

MntMeatProducts...........0.238¶

NumCatalogPurchases..0.220¶

Analisando a variável de interesse Response:¶

Observando esses parâmetros percebemos que dos 8 indicados acima, metade correspondem a variáveis relacionadas a aceitação de campanhas anteriores.¶

Dessa forma, parece razoável inferir que já existe um público fidelizado que frequentemente aceita as campanhas.¶

Além disso, as pessoas que gastam mais (que já vimos serem as pessoas de renda maior) também são mais suscetíveis a aceitarem as campanhas. Essa relação também pode ser relacionada com as categorias de Vinhos e Carnes, que se mostraram ter os maiores valores brutos de venda.¶

Um outro parâmetro que demonstrou relação interessante foi o Recency, revelando que clientes que compraram algum produto nos dias anteriores ao da última campanha tinham mais chances de aceitar a esta.¶

Modelagem de Aprendizado de Máquina¶

• Árvore de Decisão¶

O modelo de árvore de decisão é baseado na criação de regras dos atributos, que se relacionam entre si por uma hierarquia. Existe o nó-raiz (root node), que é o mais importante, e os nós-folha (leaf nodes), que são os resultados finais. No contexto de machine learning, a raiz é um dos atributos da base de dados e o nó-folha é a classe ou o valor que será gerado como resposta.¶

Como temos relativamente poucos dados, usamos uma proporção de 75/25 entre treinamento e teste.¶

Os parâmetros de maior peso para este modelo foram:¶

- Total de campanhas aceitas;¶

- Recency;¶

- Estado civil Casado.¶

• Random Forest¶

O modelo de Random Forest propõe criar várias pequenas árvores de decisão, todas com um desempenho inferior a uma única 'árvorezona', mas que juntas colocam um peso estatístico sobre cada uma das previsões. Então, a previsão final é um resumo desses palpites, geralmente sendo a média entre elas.¶

Para o modelo Random Forest usaremos 100 estimadores e critério de entropia (que se mostrou ligeiramente mais acurado)¶

Os parâmetros de maior peso para este modelo foram:¶

- Recency;¶

- Total;¶

- Income.¶

- Gastos em Carnes.¶

• SVM¶

Support Vector Machine (SVM) é um modelo de aprendizagem de máquina, considerado um dos mais robustos e acurados que existe. A ideia desse modelo é criar hiperplanos de separação entre as variáveis com margem máxima.¶

Os parâmetros de maior peso para este modelo foram:¶

- Recency;¶

- NumWebVisitsMonth;¶

- AcceptedCmp5.¶

Conclusões¶

Análise de dados¶

A partir da análise dos histogramas, tabelas e correlações estatísticas dos dados, foi possível concluir que:¶

- A variável de interesse Response é bem correlacionada com o Total gasto em produtos, que por sua vez é diretamente ligado ao Income. Portanto, temos uma ligação com um público de maior poder aquisitivo estabelecida. Este público, por sua vez, tende a comprar mais em lojas físicas e catálogos, portanto, propagandas para este público podem ser veiculadas nestes meios.¶

- A aceitação das campanhas anteriores possui um alto índice de correlação com o Response, sugerindo que já existe um público fidelizado que sempre adere as campanhas. Além disso, esse parâmetro é diretamente ligado ao Total gasto, que por sua vez é ligado ao Income, sugerindo mais uma vez que, o público com maior poder aquisitivo é um excelente alvo.¶

Essa relação pode ser ainda extendida com as categorias de Vinhos e Carnes, que mostraram mostraram ser os maiores preditores de Response dentre as variáveis de produtos, e ainda possuem os maiores valores brutos de venda.¶

Um outro parâmetro que demonstrou relação interessante foi o Recency, revelando que clientes que compraram algum produto nos dias anteriores ao da última campanha tinham mais chances de aceitar a esta.¶

Modelos de Machine Learning:¶

Árvore de Decisão:¶

Score de 0.89 com a amostra de teste¶

Revelou que a aceitação das campanhas 5 e 3, juntamente com o Recency, são os maiores previsores.¶

Random Forest:¶

Score de 0.89 com a amostra de teste¶

Revelou que Recency, Total de gastos e Income são os maiores previsores.¶

SVM:¶

Score de 0.86 com a amostra de teste¶

Revelou que Recency, número de visitas a Web e Aceitação da campanha 5 são os maiores previsores.¶

Conclusões finais:¶

Os dados mostram que o público, em números absolutos, que mais aderiu a campanha foi:¶

- Pessoas com pelo menos uma graduação;¶

- Casadas;¶

- Com idades entre 38-53 anos;¶

- Sem filhos ou com 1 filho;¶

- Com renda acima dos 60k;¶

Lembrando que, embora estas características sejam maioria, elas não são necessariamente argumentos preditores. As características de maior peso estatístico na análise e ciência de dados foram:¶

- A recência com que as pessoas fizeram as compras;¶

- O valor gasto em Vinhos e Carnes;¶

- A aceitação de alguma campanha anterior;¶

- A renda anual.¶